home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
096
/
prtrbbs.arc
/
PRTCLR.BAS
next >
Wrap
BASIC Source File
|
1985-08-19
|
2KB
|
31 lines
10 REM *** program to print the callers file ***
20 CLS:PRINT "RBBS-PC Callers File Printer":PRINT
30 LINE INPUT "Stop printing at what record number? ";LAST$
40 LAST=VAL(LAST$)
50 PAGE=1:LPP=66 '66 lines per page
60 ON ERROR GOTO 290:CLOSE
70 OPEN "R",1,"CALLERS",64:FIELD 1,64 AS R$
80 ON ERROR GOTO 0
90 RECORDS=LOF(1)/64
100 IF LAST>=RECORDS OR LAST<=0 THEN PRINT:PRINT"Bad record number...... Maximum record number is";RECORDS-1:PRINT:GOTO 30
110 PRINT:PRINT:LINE INPUT "Turn on the printer - Hit return when ready.......";A$
120 HOLD$=""
130 GOSUB 270
140 FOR I=RECORDS TO LAST STEP -1
150 IF LINES/(LPP-4)>1 THEN PAGE=PAGE+1:GOSUB 300:LINES=LINES+1 ELSE LINES=LINES+1
160 GET 1,I
170 IF HOLD$<>"" GOTO 200
180 IF ASC(LEFT$(R$,1))=0 OR ASC(LEFT$(R$,1))=32 THEN LPRINT R$:GOTO 240
190 HOLD$=R$:GOTO 240
200 HOLD$=HOLD$+R$
210 FOR K=77 TO 60 STEP -1:C=INSTR(K,HOLD$,", "):IF C>0 AND C<78 THEN 230 ELSE NEXT K
220 LINES=LINES+1:LPRINT:LPRINT HOLD$:HOLD$="":GOTO 240
230 LINES=LINES+1:LPRINT:LPRINT LEFT$(HOLD$,C-1):LPRINT " ";LEFT$(RIGHT$(HOLD$,LEN(HOLD$)-C),37);TAB(40);RIGHT$(HOLD$,9):HOLD$="":GOTO 240
240 NEXT I
250 LF=-1:GOSUB 300:LINES=0:GOSUB 300
260 PRINT:PRINT"Program completed successfully!":END
270 LPRINT:LPRINT"RBBS-PC Callers File Contents at ";TIME$;" on ";DATE$;TAB(70);"Page";PAGE
280 LPRINT" First record number is";RECORDS;" Last record number is";LAST:LPRINT:LPRINT:LINES=5:RETURN
290 CLS:PRINT:PRINT"Callers file not found - Aborting Program......":PRINT:PRINT:END
300 FOR S=LINES+1 TO LPP:LPRINT:NEXT S:IF LF THEN RETURN ELSE GOSUB 270:RETURN